Video streaming is achieved by multiplexing and synchronizing coded video into a single bit stream or multiple bit streams for transmission or storage purposes. Streaming is used for distribution of video media because media files tend to be large and the duration of a mere download can be very large. To view a media file that is not streamed, users must first download the file to a local hard disk-which may take minutes or even hours-and then open the file with player software that is compatible with the file format. Streaming enables real-time delivery of the content, since the content of the stream can be played while still in the process of being downloaded. To view the content, the user's browser opens player software, which buffers the file for a few seconds and then plays the file while simultaneously downloading it. Also, streaming media files are not stored locally on a user terminal; typically the parts of the content are discarded once used (viewed).
Prior to streaming, the content must first be encoded, a process which accomplishes a) conversion of the content from analog to digital form (if necessary), b) creation of a file in the format recognized by the streaming media server and player, then c) compression of the file to minimize the bandwidth necessary for transmission from the server to the client, while d) adopting a bit rate at which the content is to be delivered. Service providers typically choose to encode content at multiple rates for enabling access to a variety of subscribers. MPEG is a standardization group for video and audio compressions. For example, MPEG-2-based digital television standard defines formats for cable, satellite, and terrestrial video broadcast.
Streaming media formats used today include for example RealNetworks RealSystem G2, Microsoft Windows Media Technologies (“WMT”), and Apple QuickTime. Microsoft's Windows Media 9 (WM9) is a de/compression application used by the entertainment industry for streaming multimedia platforms. This format busts compression to deliver high-definition video and handles surround sound in the DVD audio environment. It supports encoding of video data that ranges from high definition (HD) quality (1080i/1080/p) to low-data-rate screen capture, and audio from multichannel to voice-only content. Since the DVD Forum has given approval to the WM9 as a mandatory component of the DVD specification standard for HD video, this format has the potential to be extensively used in the emerging field of multicast distribution of streaming multimedia content.
In order for the WM9 format to be adopted by the cable and satellite industries it need to be carried in an MPEG2-TS. The IP Broadband service provider can easily pass this pre-encoded bandwidth friendly content through his network if he is using MPEG2-TS as well. Otherwise, the service provider will have to demultiplex the MPEG2-TS VC9 services and remultiplex new WM9/ASF based services based in real-time. This will increase costs and complexity and decrease robustness. This remultiplex operation way not even be effective.
Windows Media 9 (WM9) streaming system makes use of a file format known as ASF (Advanced Streaming Format) for packaging multimedia content. An ASF file container stores audio, multi-bit-rate video, metadata such as title and author, and index and script commands, such as Universal Resource Locators (URLs) and closed captioning. The file container supports files as large as 17 million terabytes. By using distinct file extensions (.wma, .wmv, .A) users can install multiple players on their system, using e.g. one extension to play only audio and one for playing video. Audio and video content compressed with a wide variety of codecs (coding/decoding devices) can be stored in an ASF file and played back with a Windows Media Player, provided appropriate codecs are installed on the user terminal, equipped with Windows Media Services or optionally packaged with Windows Media Rights Manager.
ASF format has the potential of becoming widely adopted by the video entertainment industry, because it supports data delivery over a wide variety of networks protocols, while still being suitable for local playback. It also supports advanced multimedia capabilities including extensible media types, component download, scalable media types, author-specified stream polarization, multiple language support, and extensible bibliographic capabilities, including document and content management.
ASF provides for segmentation of the multimedia streams into individual data packets, multiplexes the packets, and time synchronizes the streams as required for presentation. A header, known as an ASF header, is placed at the beginning of the file, and contains important information required to decode the stream. Thus, the header provides means of identifying individual component streams and the packets which belong to these streams; information on the video codec configuration (e.g. WM9) required to initialize the video decoder; information on the audio codec configuration required in order to initialize the audio decoder, and DRM (Digital Rights Management) information required to acquire licenses and decrypt the stream.
For large amounts of data to be distributed to a large number of subscribers, IP multicast is more efficient than normal Internet transmissions because a server can broadcast data/messages to many recipients simultaneously. Unlike traditional Internet traffic that requires separate connections for each source—destination pair, IP multicasting allows many recipients to share the same source. This means that just one set of packets is transmitted for all destinations. To receive a multicast, a subscriber listens to a specific IP address on a multicast-enabled network, like tuning a television to a specific channel.
Internet Group Management Protocol (IGMP) is defined in RFC 1112 as the Internet standard for IP multicasting. IGMP establishes host memberships in particular multicast groups on a single network and allows a host to inform its local router that it wants to receive data addressed to a specific multicast group. Multicast broadcast is particularly suitable for distribution of multimedia (video, audio, data) content.
However, unlike a unicast stream, no header information is contained in a multicast stream, since the multicast stream is continuous and must support random access. In order to address this problem, Microsoft mandated the distribution of the information in the ASF header through an alternative mechanism known as a Windows Media Station file, or an .nsc file. A .nsc file contains in addition to the information in the ASF header, information specific for connecting and playing a multicast stream, such as the multicast IP group address, multicast port, stream format, and various station settings. A Windows Media Player usually opens an announcement (.asx, .wax, or .wvx) file first, that points it to the location of the nsc file.
Currently, .nsc file distribution is done via the HyperText Transfer Protocol (HTTP), which is an application layer protocol (OSI layers) defining a set of rules for exchanging text, graphic images, sound, video, and other multimedia files on the Web. HTTP is not ideal for a broadcast TV solution, due to scalability issues as well as channel changing latency issues. This is because an .nsc file needs to be retrieved over HTTP on each channel change, meaning that the subscriber set-top box (STB) has to access a server and get the information before initiating the channel change. Also, HTTP is a unicast protocol, so that if many STBs are changing channels at the same time, scalability issues may emerge.